#ifndef __A_STAR_PLANNER_H_
#define __A_STAR_PLANNER_H_

#include "grid_node.h"
#include <mc_path_planning/path_planning_base.h>

#include <queue>
#include <unordered_map>
#include <vector>
#include <algorithm>  // for std::reverse
using namespace std;

class Astar: public PathPlanningBase{
    public:
        Astar();
        ~Astar();

        // 全局路径规划 虚函数接口
        bool PathGenerate(Vec2i start, Vec2i goal, vector<Vec2i>& points);



    private:
        ros::NodeHandle nh_;
        vector<std::shared_ptr<GP>> __neighbor_points;
};

#endif